from appium import webdriver
from selenium.webdriver.common.by import By

# 字典
# 1.设置终端参数项
desired_caps = {
    "platformName": "Android",
    "platformVersion": "5.1.1",
    "deviceName": "Samsung Galaxy S10",
    "appPackage": "com.tal.kaoyan",
    "appActivity": "com.tal.kaoyan.ui.activity.SplashActivity",
    "noReset": True
}
# 2.appium server进行启动

# 3.发送指令给到appium server
driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub", desired_caps)

# 等待 三大等待：1.强制等待（辅） 2.隐士等待 3.显示等待(主)
driver.implicitly_wait(15)
# 元素的定位方法： 通过resourceid属性  find_element_by_id 返回的是webElement对象
el_passwd = driver.find_element(By.ID, "com.tal.kaoyan:id/login_password_edittext")
el_passwd.send_keys("china No.1")

# 元素定位方法2：通过文本属性  find_element_by_android_uiautomator(’'new UiSelector().方法
# el_username = driver.find_element_by_android_uiautomator('new UiSelector().text("请输入用户名")')
# el_username.send_keys("china No.1")

# 组合定位：结合多个属性来进行定位
el_login = driver.find_element_by_android_uiautomator(
    'new UiSelector().text("登录").resourceId("com.tal.kaoyan:id/login_login_btn")')
el_login.click()
